package mesweb.mesweb.vo.produceLine;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import mesweb.mesweb.enums.PlanMethod;
import mesweb.mesweb.enums.enumPlanSort;

import javax.validation.constraints.Future;
import javax.validation.constraints.Min;
import java.util.Date;

/**
 * @Description: TODO
 * @Author niufw
 * @Date 2021/11/23 17:46
 * @Version 1.0
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ScheduleProduceLineVo {

    @Min(1)
    long produceLineId;

    String orderNo;  //订单编号

    String productNo; //产品编号

    @Min(1)
    long qty; //计划数量

    @Future
    Date deliveryDate; //客户交货期

    @Min(0)
    int transferQty;      //转移量
    @Min(0)
    float bottleNeckCacheRatio;  //瓶颈提前期比例
    @Min(0)
    float materialCacheQty;       //投料提前期

    Date  calculateStartDate;    //开始计算时间，为空默认为当天

    PlanMethod planMethod;               //排产方式 :正排，1:倒排

    enumPlanSort planSort;

}
